A social network is a social structure (e.g., community) made of members (e.g., a person or a user) connected by social relationships such as friendship, kinship, relationships of beliefs, knowledge, prestige, culture, etc. Individual computers linked electronically are used to form the basis of computer mediated social interaction and networking within a social network community. A social networking service is a platform to build computer mediated social networks. Throughout this disclosure, the terms “social network” and “social network service” may be used interchangeably and refer to a computer mediated social network having computer servers to facilitate social interaction among members of the social network. Many social networks are web-based that allow each individual user to create a public profile, to create a list of users (referred to as social network friends) with whom to share information, and to exchange social network messages (e.g., e-mail and instant messaging) as well as share user posted documents (e.g., photo/video/sharing and blog posting) among social network friends. In a broader sense, the term “social network” may also refer to other online communities, such as Internet forum, or message board, that is an online discussion site where users hold conversations in the form of posted messages.
Examples of computer mediated social network services include Facebook® (a registered trademark of Facebook, Inc., Palo Alto, Calif.), Myspace® (a registered trademark of Myspace, Inc., Beverly Hills, Calif.), Twitter® (a registered trademark of Twitter, Inc., San Francisco, Calif.), LinkedIn® (a registered trademark of LinkedIn, Ltd., Mountain View, Calif.), etc. Certain social network services provide application programming interfaces (APIs) allowing programmatic retrieval of social network messages by third party developers.
Public-key cryptography, also known as asymmetric cryptography, is a class of cryptographic algorithms which require two separate keys, one of which is secret (or private) and one of which is public. Although different, the two parts of this key pair are mathematically linked. The public key is used for encryption; whereas the private key is used for decryption. The term “asymmetric” stems from the use of different keys to perform these opposite functions, each the inverse of the other. In contrast, symmetric cryptography relies on the same key to perform both encryption and decryption.